A user interface is a collection of features designed into a computing device which allows a user to interact with the computing device. They include hardware such as a display screen, a keyboard, a mouse, a light pen, and so on. They also include software that allows the user to interact with the hardware or the software that resides on the computing device or is accessed by the computing device over a network such as from a cloud server.
Software user interfaces may be part of an operating system or an application. They typically serve to enable a user to interact with the operating system or an application. The user interface may also serve as a proxy application that enables a user to interact in a specified way with the operating system or other applications on or accessed by the computing device. Illustrative operating systems include Apple®, Android®, Linux®, and Windows®. Illustrative applications include Skype®, Pandora® Box, and so on. These software user interfaces are designed to allow users to interact with user interface hardware, software residing on or accessed by the computing device, and data collected by or generated by the computing device for some intended purpose such as setting the time for an electronic alarm on the computing device to sound or playing a game.
The interaction of a user with the software user interface may occur in several ways. For example, the software user interface may display a menu and the user may interact with the menu by scrolling through the menu to locate an object. Selection of the object once located may open a file, an application, or other object. If the object is an application, when executed, the application executes instructions that may display a window, a menu, or render some other display on the display screen. If a window is rendered, the user may enter data into the window. If a menu is rendered, the user may navigate the displayed menu and select an object in the menu to execute. The display rendered may also be messages or other data, such as an alert that a user won a game or a display of the number of points won, or both. An item on a menu may be selected by touch activation such as by touching active buttons or areas on the display screen of the computing device. Selection may also occur manually such as by keystroke entry. In another illustrative example, selection may be by voice activation.
In one illustrative example, a menu may allow a user to navigate through cabinets, file folders, sub file folders, and so on, located in a memory on or off the computing devices in order to locate a document. Once located, the user interface may allow a user to open the document so that it may be rendered on the display screen of the computing device. As another example, a menu may allow a user to navigate through different tasks that a gamer might be presented when running a gaming application. For example, a menu rendered by the Pac-Man® gaming application may allow a user to activate the game application. The menu may recognize user activations of a touch screen or virtual buttons on the display screen and/or keyboard or game console key entries and in response thereto move the Pac-Man across an electronic game board rendered on the display screen based on the user selections.
One of the challenges to user interface design is how to help a user quickly and proficiently navigate through the myriad of data, files, and applications that may be accessible from a computing device. These data, files, and applications may be stored on the computing device or a piece of hardware connected to the computing device or on a cloud server or elsewhere on a network or a combination thereof. Systematic, information-oriented visual or graphic designing of user interfaces is an important part of helping the user with this navigation.
There are many components of a user interface including mental models, navigation, presentation, interaction, and metaphors.
Metaphors are particularly helpful to a user and are defined as herein explained. Metaphors are fundamental concepts, terms and images by which and through which information is easily recognized, understood, and remembered. They are used in software user interface design to facilitate interpretation and to provide a vehicle for easily recognizing, understanding, and remembering where a data, file, or application may be stored and how the data, file, or application may be accessed or manipulated. Metaphors include the essential ways by which choices for command or control may be communicated and the status of data and functions may be depicted.
The metaphor allows a comparison between two objects, often seemingly unrelated subjects. For example, a metaphor may draw a comparison between a data, file, or application and an object in the real world. Metaphors typically achieve their effectiveness through comparisons based on organization or operation. Illustrative organizational associations may include nouns like structures, classes, attributes, and so on. Illustrative operational associations may include verbs like processes, algorithms, recipes, and so on.
Illustrative examples of an organizational association may include drawers, files, folders, and like, such as used in a Windows operation system. For example, a user may put a related category of documents into the same file and then put a related category of by files into the same drawer. This allows the user to easily organize large groups of files by drawers in a way that allows documents to be easily located through the association of related documents, files, and drawer. Other examples of organizational associations may include an album which a user may associate with photos; a program, channel, or network which a user may associate with content; a tree, root, or trunk which a user may associate with an organizational structure. Hence, a user may put photos of a family vacation into an album titled family vacation; organize programs by channels and channels by networks; use a tree, root or trunk to visual an organizational structure for content on the computer.
Illustrative examples of operational metaphors may include operators like move, browse, select, create, delete, and so on which a user may associate with like operations. For example, a menu including operators like move, browse, select, create, delete, and so on can be activated by a user to perform an operation that a user may associate with the operator such as move a selected document when the move operator is activated.
Hence, an organizational structure of drawers, files, folders, and like depicted by the software user interface on the display allows a user to understand where and how to easily store, access, and manipulate textual, photo, or video documents or applications arranged according to this structure. Similarly, a menu command such as move or delete allows a user to easily understand operations such as moving or deleting data, a file, or an application. These and other metaphorical contexts and associated familiar physical objects are used to communicate to the user the documents, files, application, and data that are available to the user through the computing device.
As processors and software become more powerful, they allow for development of more powerful user interfaces. At the same time, users are accessing and manipulating ever increasing amounts of documents, files, applications, and data. These user access and manipulations are putting downward pressure on, challenging, and in some cases slowing down existing user interfaces. The increasing tension on the architecture of conventional user interfaces accommodating the many activities going on in the human brain point to shortcomings in conventional interfaces.
There is a need for more powerful components of a user interface including mental models, navigation, presentation, interaction, and metaphors that will allow a user to more quickly and proficiently navigate through the myriad of document, files, applications and data that may be accessible from a computing device.